/**
 * 搜索结果组件
 * 用于显示统一格式的搜索结果项
 * @author WeChat Mini Program Team
 * @since 2025-08-14
 */

Component({
  /**
   * 组件的属性列表
   */
  properties: {
    // 结果数据项
    item: {
      type: Object,
      value: {}
    },
    
    // 结果类型
    type: {
      type: String,
      value: 'default'
    },
    
    // 标签类型
    tagType: {
      type: String,
      value: 'default'
    },
    
    // 标签文本
    tagText: {
      type: String,
      value: ''
    },
    
    // 图片类型
    imageType: {
      type: String,
      value: 'normal' // normal, avatar
    },
    
    // 是否显示箭头
    showArrow: {
      type: Boolean,
      value: true
    },
    
    // 自定义样式类
    customClass: {
      type: String,
      value: ''
    }
  },

  /**
   * 组件的初始数据
   */
  data: {

  },

  /**
   * 组件的方法列表
   */
  methods: {
    /**
     * 点击结果项
     */
    onItemTap() {
      this.triggerEvent('itemtap', {
        item: this.properties.item,
        type: this.properties.type
      })
    }
  },

  /**
   * 组件生命周期
   */
  lifetimes: {
    /**
     * 在组件实例刚刚被创建时执行
     */
    created() {
      console.log('SearchResult component created')
    },

    /**
     * 在组件实例进入页面节点树时执行
     */
    attached() {
      console.log('SearchResult component attached')
    },

    /**
     * 在组件在视图层布局完成后执行
     */
    ready() {
      console.log('SearchResult component ready')
    },

    /**
     * 在组件实例被移动到节点树另一个位置时执行
     */
    moved() {
      console.log('SearchResult component moved')
    },

    /**
     * 在组件实例被从页面节点树移除时执行
     */
    detached() {
      console.log('SearchResult component detached')
    }
  }
})
